package cn.wolfcode.crm.service;

import cn.wolfcode.crm.domain.Staff;
import cn.wolfcode.crm.query.StaffQueryObject;
import cn.wolfcode.crm.util.PageResult;

import java.util.List;

public interface IStaffService {
    /**
     * 通过id删除职工
     * @param id 职工id
     */
    void delete(Long id);

    /***
     * 保存职工信息
     * @param entity
     */
    void save(Staff entity);

    /***
     * 更新职工信息
     * @param entity
     */
    void update(Staff entity);

    /***
     * 通过id查询职工信息
     * @param id 要查询的职工的id
     * @return 返回职工信息
     */
    Staff get(Long id);

    /***
     * 查询所有的职工信息
     * @return 返回查询到的所有职工信息
     */
    List<?> list();

    /***
     * 高级查询+分页
     * @param qo 封装要查询的信息条件
     * @return 返回查询到的信息
     */
    PageResult query(StaffQueryObject qo);
}
